package com.wxp.demo08.page;

import android.os.Bundle;

import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AppCompatActivity;
import androidx.viewpager.widget.ViewPager;

import com.wxp.demo08.R;
import com.wxp.demo08.page.adapter.ImagePagerApapter;
import com.wxp.demo08.shopping.entity.GoodsInfoEntity;
import com.wxp.demo08.util.LogUtils;
import com.wxp.demo08.util.ToastUtil;

import java.util.ArrayList;

/**
 * 3.1 翻页视图ViewPager
 */
public class ViewPagerActivity extends AppCompatActivity implements ViewPager.OnPageChangeListener {

    private ArrayList<GoodsInfoEntity> mGoodsList;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        EdgeToEdge.enable(this);
        setContentView(R.layout.activity_view_pager);
        this.setTitle("3.1 翻页视图ViewPager");

        ViewPager vp_content = findViewById(R.id.vp_content);
        mGoodsList = GoodsInfoEntity.getDefaultList();
        ImagePagerApapter adapter = new ImagePagerApapter(this, mGoodsList);
        vp_content.setAdapter(adapter);
        // 给翻页视图添加页面变更监听器
        vp_content.addOnPageChangeListener(this);

    }


    /**
     * 在翻页过程中触发。
     * 该方法的三个参数取值说明为 ：第一个参数表示当前页面的序号；第二个参数表示页面偏移的百分比，取值为0到1；第三个参数表示页面的偏移距离
     */
    @Override
    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
        LogUtils.debug("在翻页过程中触发=onPageScrolled=>");
    }

    /**
     * 在翻页结束后触发。
     * position表示当前滑到了哪一个页面
     */
    @Override
    public void onPageSelected(int position) {
        LogUtils.debug("在翻页结束后触发=onPageSelected=>");
        ToastUtil.show(this, "您翻到的手机品牌是：" + mGoodsList.get(position).name);
    }

    /**
     * 翻页状态改变时触发。
     * state取值说明为：0表示静止，1表示正在滑动，2表示滑动完毕
     * 在翻页过程中，状态值变化依次为：正在滑动→滑动完毕→静止
     */
    @Override
    public void onPageScrollStateChanged(int state) {
        LogUtils.debug("翻页状态改变时触发=onPageScrollStateChanged=>");
    }
}